package com.fanh.service;

import com.fanh.common.api.CommonPage;
import com.fanh.dto.GuideCommentResult;
import com.fanh.dto.GuideCourseParam;
import com.fanh.dto.GuideCourseResult;
import com.fanh.dto.LessonCommentParam;
import com.fanh.model.GuideCommentFile;
import com.fanh.model.GuideContent;
import com.fanh.model.GuideCourse;
import org.springframework.web.multipart.MultipartFile;

import java.util.List;
import java.util.Map;

public interface GuideCourseService {


    /**
     * 获取文章详情
     * @param id
     * @return
     */
    GuideContent getGuideContentById(String id);

    /**
     * 获取文章批注详情
     * @param
     * @return
     */
    List<GuideCommentResult> getGuideCommentBycontentId(String lessonId);

    /**
     * 获取课程
     * @param userId
     * @param pageNo
     * @param PageSize
     * @return
     */
    CommonPage<GuideCourse> getCourseList(String userId,int pageNo, int PageSize);

    /**
     * 课程文件上传
     * @param commentFile
     * @param courseCommentFile
     * @return
     */
    String fileUpload(MultipartFile commentFile, GuideCommentFile courseCommentFile);

    /**
     * 课程上传
     * @param lessonCommentParam
     * @return
     */
    int uploadComment(LessonCommentParam lessonCommentParam);

    Map<String, Object> paycheck(String userId, String courseId);

    List<GuideCourse> readHistory(String userId, Integer pageNo, Integer pageSize);

    List<GuideCourseResult> findList(GuideCourseParam course, Integer pageNo, Integer pageSize);
    List<GuideCourseResult> findList(GuideCourseParam course);

    List findListNames(String name,String publish, int pageNo, int pageSize);
}
